Process Data Object (PDO) Mapping

PDOs are high priority telegrams used for transmitting data between the Master and Slave devices. They are higher priority than SDOs, allowing data to be transmitted very close to real-time. Typically, PDOs contain less bytes of data than SDOs, allowing data to be transmitted faster on the CAN bus. It can also be said that PDOs allow more data to be transmitted at a given CAN bus baud rate.

Maximum PDO size 8 bytes
Maximum CANopen object size 4 bytes
Maximum number of CANopen objects mapped to a PDO 4
Maximum number of PDOs in each direction 4

 

Transmit PDO (TxPDO) Drive to Master i.e., Position Feedback/Actual Position
Receive PDO (RxPDO) Master to Drive i.e., Target Position

Transmission Type

PDOs can be cyclic, or event triggered with timing constraints.

Cyclic PDOs are transmitted within a pre-defined time-window immediately after the SYNC object. Example configurations: every nth SYNC message, every SYNC message, every SYNC after an event.

Event driven PDOs are transmitted without any relation to the SYNC object. An event is when the data value changes. For example, an event triggered PDO containing actual position will be sent every time the position value changes, typically every communication update cycle. The transmission type includes a time delay to limit how often the event driven PDO is sent to reduce the bus traffic.

Use objects 1400h - 1403h RxPDO communication parameters for RxPDO configuration, and 1800h - 1803h for TxPDO configuration. These objects are used to configure the PDO COB-IDs and the transmission type (SYNC or Event).

RxPDO1 1400h sub-index 1 COB-ID 200h + Node-ID 1400h RxPDO communication parameter 1
RxPDO2 1401h sub-index 1 COB-ID 300h + Node-ID 1401h RxPDO communication parameter 2
RxPDO3 1402h sub-index 1 COB-ID 400h + Node-ID 1402h RxPDO communication parameter 3
RxPDO4 1403h sub-index 1 COB-ID 500h + Node-ID 1403h RxPDO communication parameter 4

Objects 1400-1403 sub-index 2 sets the transmission type, determining whether the PDO is processed by the drive immediately, or after a SYNC telegram.

TxPDO1 1800h sub-index 1 COB-ID 180h + Node-ID 1800h TxPDO communication parameter 1
TxPDO2 1801h sub-index 1 COB-ID 280h + Node-ID 1801h TxPDO communication parameter 2
TxPDO3 1802h sub-index 1 COB-ID 380h + Node-ID 1802h TxPDO communication parameter 3
TxPDO4 1803h sub-index 1 COB-ID 480h + Node-ID 1803h TxPDO communication parameter 4

Objects 1800-1803 sub-indexes 2, 3, and 5 set the transmission type, determining whether the PDO is sent after event, time delay, or SYNC telegram.

Mapping

Use objects 1600h - 1603h RxPDO mapping parameters for RxPDO mapping, and 1A00h - 1A03h TxPDO mapping parameters for TxPDO mapping. These are used to map specific objects to the PDOs. In other words, it defines which CANopen object data will be contained in each PDO.

RxPDO1 1600h sub-index 1 1600h RxPDO mapping parameter 1
RxPDO2 1601h sub-index 1 1601h RxPDO mapping parameter 2
RxPDO3 1602h sub-index 1 1602h RxPDO mapping parameter 3
RxPDO4 1603h sub-index 1 1603h RxPDO mapping parameter 4
TxPDO1 1A00h sub-index 1 1A00h TxPDO mapping parameter 1
TxPDO2 1A01h sub-index 1 1A01h TxPDO mapping parameter 2
TxPDO3 1A02h sub-index 1 1A02h TxPDO mapping parameter 3
TxPDO4 1A03h sub-index 1 1A03h TxPDO mapping parameter 4

Sub-index 0 represents the number of CANopen objects mapped to a PDO.

Sub-indexes 1 to 4 specify up to four CANopen objects for each PDO.